package co.edu.usbcali.unidad.modelo.dto;

import co.edu.usbcali.unidad.modelo.Administrador;
import co.edu.usbcali.unidad.presentation.backEndBeans.AdministradorView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;

public class AdministradorDTO implements Serializable {
	private static final long serialVersionUID = 1L;
	private String estCodigo_Estado;
	private String perCedula_Persona;
	private String admCodigo;
	private boolean rowSelected = false;
	private AdministradorView administradorView;
	private Administrador administrador;

	public Administrador getAdministrador() {
		return administrador;
	}

	public String listener_update(ActionEvent e) {
		try {
			administradorView
					.action_modifyWitDTO(((admCodigo == null) || admCodigo
							.equals("")) ? null : new String(admCodigo),
							((estCodigo_Estado == null) || estCodigo_Estado
									.equals("")) ? null : new String(
									estCodigo_Estado),
							((perCedula_Persona == null) || perCedula_Persona
									.equals("")) ? null : new String(
									perCedula_Persona));
			rowSelected = !rowSelected;
		} catch (Exception ex) {
			return "";
		}

		return "";
	}

	public void listener_cancel(ActionEvent e) {
		admCodigo = administrador.getAdmCodigo().toString();
		estCodigo_Estado = (administrador.getEstado().getEstCodigo() != null) ? administrador
				.getEstado().getEstCodigo().toString()
				: null;
		perCedula_Persona = (administrador.getPersona().getPerCedula() != null) ? administrador
				.getPersona().getPerCedula().toString()
				: null;
		rowSelected = !rowSelected;
	}

	/**
	 * <p>
	 * Bound to commandLink actionListener in the ui that renders/unrenders the
	 * Customer details for editing.
	 * </p>
	 */
	public void toggleSelected(ActionEvent e) {
		admCodigo = administrador.getAdmCodigo().toString();
		estCodigo_Estado = (administrador.getEstado().getEstCodigo() != null) ? administrador
				.getEstado().getEstCodigo().toString()
				: null;
		perCedula_Persona = (administrador.getPersona().getPerCedula() != null) ? administrador
				.getPersona().getPerCedula().toString()
				: null;
		rowSelected = !rowSelected;
	}

	public void setAdministrador(Administrador administrador) {
		this.administrador = administrador;
	}

	public AdministradorView getAdministradorView() {
		return administradorView;
	}

	public void setAdministradorView(AdministradorView administradorView) {
		this.administradorView = administradorView;
	}

	public String getEstCodigo_Estado() {
		return estCodigo_Estado;
	}

	public void setEstCodigo_Estado(String estCodigo_Estado) {
		this.estCodigo_Estado = estCodigo_Estado;
	}

	public String getPerCedula_Persona() {
		return perCedula_Persona;
	}

	public void setPerCedula_Persona(String perCedula_Persona) {
		this.perCedula_Persona = perCedula_Persona;
	}

	public String getAdmCodigo() {
		return admCodigo;
	}

	public void setAdmCodigo(String admCodigo) {
		this.admCodigo = admCodigo;
	}

	public boolean isRowSelected() {
		return rowSelected;
	}

	public void setRowSelected(boolean rowSelected) {
		this.rowSelected = rowSelected;
	}
}
